package com.sys.ai.domain;

import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import com.sys.common.annotation.Excel;
import com.sys.common.core.domain.BaseEntity;
import io.swagger.v3.oas.annotations.media.Schema;
import lombok.Data;
import lombok.experimental.Accessors;

import java.io.Serial;
import java.io.Serializable;

/**
 * 知识文档对象 ai_knowledge_file
 *
 * @author LGY
 * @date 2025-05-26
 */
@Data
@Accessors(chain = true)
@TableName("ai_knowledge_file")
@Schema(description = "知识文档对象")
public class AiKnowledgeFile extends BaseEntity implements Serializable {
    @Serial
    private static final long serialVersionUID = 1L;

    /**
     * ID
     */
    @TableId(value = "id", type = IdType.ASSIGN_ID)
    @Schema(description = "ID")
    private String id;
    /**
     * 知识库id
     */
    @Excel(name = "知识库id")
    @TableField(value = "knowledge_id")
    @Schema(description = "知识库id")
    private String knowledgeId;
    /**
     * 文档上传地址
     */
    @Excel(name = "文档上传地址")
    @TableField(value = "file_path")
    @Schema(description = "文档上传地址")
    private String filePath;
    /**
     * 文件类型
     */
    @Excel(name = "文件类型")
    @TableField(value = "file_type")
    @Schema(description = "文件类型")
    private String fileType;
    /**
     * 状态
     */
    @Excel(name = "状态")
    @TableField(value = "status")
    @Schema(description = "状态")
    private Integer status;
    /**
     * 异常消息
     */
    @Excel(name = "异常消息")
    @TableField(value = "exception_message")
    @Schema(description = "异常消息")
    private String exceptionMessage;
    /**
     * 备注
     */
    @Excel(name = "备注")
    @TableField(value = "remark")
    @Schema(description = "备注")
    private String remark;
}